The present invention relates to the field of message passing and, more particularly, to programmatic modification of a message flow during runtime.
Application integration, at a high level, can refer to a solution that can be implemented to integrate software applications within and between organizations. Historically, application integration focused on the integration of legacy software applications, such as between different departments, divisions within companies, or new acquisitions. Within an organization, these applications often vary considerably across departments, can exist on different platforms, can be written in different programming languages, and can use different data formats. Integrating the applications within a Service Oriented Architecture can be a practical and cost effective solution over the alternative of re-writing the existing applications.
Within SOA infrastructures, message passing can be an integral component which can give rise to flexible, reusable, and robust application integration. Message passing typically includes a message broker which can perform a multitude of message handling operations. That is the message broker can facilitate inter-application communication within the organization. The message broker can process messages within message flows which are currently static. That is, the message flow cannot be dynamically self-regulating and/or responsive to messages, internal states, context, and stimuli.
Current solutions for improving message flow processing include manually modifying a message flow. For example, a message flow design can be modified by a middleware analyst in response to performance metrics which can indicate a bottleneck. Manually modified message flows must be redeployed and continually optimized through human intervention. This approach can be time-consuming and error-prone which can significantly impact infrastructure costs.